草庐IT

Java deleteOnExit 和 addShutdownHook - 哪个先出现?

全部标签

windows - 如何定义应用程序是在哪个程序中开发的

这个问题在这里已经有了答案:关闭10年前。PossibleDuplicate:Determinesourcelanguagefromabinary?有编译好的应用程序(com、exe等)。我想问一下,有没有什么方法可以识别应用程序是用哪种编程语言开发的(c#、Delphi、VisualBasic、VisualC++等)?

c# - 如何查找进程属于哪个产品?

我需要获取有关流程产品的信息。举个例子,我需要知道进程WINWORD是属于Office2010还是Office2013。再比如adobecreativesuite这个软件。一般对于一个进程,不同的套件可以使用相同的名称,如何找出套件的版本。在服务中,我有一个从服务器检索的进程名称列表。我跟踪用户使用这些流程的时长,并将此信息发送回服务器。由于该服务将安装在多台计算机上,因此Office套件、Adobe套件或任何其他产品可能会有所不同,但该过程在每个套件中的名称可能相同。目前,在服务器中我无法识别该进程属于哪个版本。要求能够显示使用了多长时间,例如,MicrosoftWord2010以及

c++ - 了解调用者来自哪个 DLL

目前,我有一个C++exe项目,动态加载N个DLL。这些DLL将执行对exe项目中的函数的调用。现在,在我的exe项目中,我想知道调用者来自哪些DLL。是否可以使用任何可用的WindowsAPI来做到这一点? 最佳答案 这取决于您的实际目标。如果您认为DLL可能是恶意的(也就是说,如果您希望它们尝试欺骗您),则不能这样做。但是,如果它只是用于调试或日志记录或类似的相对无害的事情,您可以查看堆栈并获取ret指令将用于返回调用者的地址,枚举加载的DLL和测试该地址在其中的哪一个。要获得“返回地址”,您可以使用_ReturnAddress

windows - 哪个对话框间距符合 Windows UI/UX 准则?

我们正在实现一个Windows7应用程序,它会在任务栏的通知区域中显示一个弹出窗口。简单形式有两个版本。和精简版:哪个更接近Windows的UI指南?有充分的理由偏爱其中之一吗? 最佳答案 我觉得第二个更好看。我很难指出它们之间的确切区别,但看起来第一个的边框之间有更多的水平填充。这与Microsoft'shandyUIdocumentation/guidebook中的标准UI或示例图片不一致|.例如,在这两个通知区域弹出窗口中几乎没有水平(或垂直)填充:Windows的标准边框填充(根据Microsoft'sUXguideline

c++ - 询问哪个进程锁定了 Windows C++ 中的文件

我有2个应用程序共享同一个锁定文件,我需要知道什么时候另一个应用程序已锁定/解锁文件。下面的代码是最初在Linux机器上实现,正在移植到Window8、VS12。我已经成功地移植了类中的所有其他代码,并且正在锁定文件LockFile(handle,0,0,sizeof(int),0)和等效的UnlockFile(...)。然而,我在使用以下wait()命令时遇到问题。booldevices::comms::CDeviceFileLock::wait(boollocked,inttimeout){//Retrievethecurrentpidoftheprocess.pid_tpid=g

windows - 如何指定在哪个监视器上打开控制台窗口?

我目前已通过扩展坞将两台显示器连接到我的笔记本电脑。当我运行我的控制台应用程序时,控制台窗口总是在第一台显示器上弹出。我怎样才能改变它在另一台显示器上自动打开,例如在监视器3上?也许我需要修改某个属性?总是将控制台窗口拖到打开我的IDE的显示器上,这很烦人。 最佳答案 控制台应用程序(与GUI应用程序不同)不创建自己的窗口;这是由Windows完成的,如果您在已经创建的控制台中运行,那么您有点继承,例如cmd的窗口。不过,您可以做的是找到您的窗口并将其移动到不同的显示器。另一个选项是在布局下的控制台窗口属性中更改该应用程序的窗口管理

c++ - 如何确定安装了哪个版本的 Direct3D?

我们有一个应用程序需要使用Direct3D。具体来说,它至少需要DirectX9.0c版本4.09.0000.0904。虽然这应该存在于所有较新的XP机器上,但它可能不会安装在较旧的XP机器上。我如何以编程方式(使用C++)确定它是否已安装?我希望能够向用户提供Direct3D将不可用的信息消息。 最佳答案 调用DirectXSetupGetVersion:http://msdn.microsoft.com/en-us/library/microsoft.directx_sdk.directsetup.directxsetupget

java - 检测哪个监视器显示窗口

我确实有主应用程序JFrame窗口,它可以包含不同的组件。当用户选择可编辑的文本字段时,我打开一个自行实现的OnScreenKeyboard。OSK也是一个JFrame窗口。当用户将主窗口拖动到另一台显示器时,OSK也应显示在同一台显示器上。为此,我必须检测显示主JFrame的监视器。我尝试在中找到一个方法Toolkit.getDefaultToolkit()但是没能找到。你知道我如何检测显示JFrame的监视器吗?Java版本1.4WindowsXP谢谢 最佳答案 回答,如果所有可用监视器的解决方案都相同。对于AWT:每个控件都有

c# - 如何找出哪个程序集处理了请求

我有一个Web解决方案,其中包含两个项目(A和B),其中B引用A。在A中,我有一个Html扩展方法,显然可以从A或B调用它。我的问题是,一旦方法被调用(通常是从局部View),方法内部是否有办法确定调用是来自程序集A还是程序集B没有传递任何东西给它?我试图看看我是否可以用HttpContext.Current.Request做任何事情,但找不到任何有用的东西。我可以获得URI,但仍然无法告诉我发出请求的文件在哪个程序集中。感谢您的回答-该方法返回一个字符串,该字符串来自一个string.resx文件,每个程序集都有一个。这就是为什么我需要知道要访问哪个文件才能返回字符串。因为如果我添加

c# - .NET、.Contains() 或 .Count() 哪个更快?

我想将修改后的记录数组与从数据库中提取的记录列表进行比较,并从数据库中删除传入数组中不存在的那些记录。修改后的数组来自维护数据库的客户端应用程序,并且此代码在WCF服务应用程序中运行,因此如果客户端从数组中删除一条记录,则应从数据库中删除该记录。下面是示例代码片段:publicvoidUpdateRecords(Record[]recs){//lookfordeletedrecordsforeach(RecordrecinUnitOfWork.Records.ToList()){varcopy=rec;if(!recs.Contains(rec))//usethisone?if(0==